var connect = {
    timestamp : 0,
    noerror : false,
    code:   1,
    alertMsg : "Đã gửi yêu cầu tư vấn của bạn tới nhà tư vấn!",
    saveData : function(msgType,userId,uidCall){
        $.ajax({
            beforeSend:function(){
            },
            type: 'GET',
            url: '/RealTime/saveData',
            data: {
                'msg'       : msgType,
                'uid'       : userId,
                'uidCall'   : uidCall
            },
            dataType: 'json',
            success: function(data){
            }
        });
        alert(connect.alertMsg);
        return true;
    },
    backConfirm : function(msgType,userId,uidCall){
        $.ajax({
            beforeSend:function(){
            },
            type: 'GET',
            url: '/RealTime/backConfirm',
            data: {
                'msg'       : msgType,
                'uid'       : userId,
                'uidCall'   : uidCall
            },
            dataType: 'json',
            success: function(data){
            }
        });
        alert(connect.alertMsg);
        return true;
    },
    getData : function() { 
        $.ajax({
            type: 'GET',
            url: '/RealTime/getData',
            data: {
                'timestamp' : connect.timestamp
            },
            dataType: 'json',
            success: function(response){
                if(response.code == 1){
                    //5: Payment OK 	ko dung
                    if(response.msg == 1){
                        //call
                        connect.timestamp = response.timestamp;
                        var htmlReturn = '<span>'+response.unameCall +' đã yêu cầu liên hệ với bạn. Nếu bạn đã bắt đầu tư vấn cho '+response.unameCall +' thì hãy click vào đây để yêu cầu '+response.unameCall +' thanh toán!</span><p><span class="time">Lúc '+response.timescreate+'</span><input type="button" value="Bỏ qua" class="cofirm-cancel" /><input type="button" value="Đồng ý" class="cofirm-ok" /></p>';
                        htmlReturn += '<input type="hidden" class="userId" value="'+response.uid+'"/>';
                        htmlReturn += '<input type="hidden" class="uidCall" value="'+response.uidCall+'"/>'; // user thuc hien call
                        connect.handleResponse(htmlReturn,0);
                    }else if(response.msg == 2){
                        //comfirm ok
                        connect.timestamp = response.timestamp;
                        var htmlReturn = '<span>'+response.unameCall+' yêu cầu bạn thanh toán. Bạn có đồng ý không?</span>';
                        if(response.paidByHour == 1 && response.turnBasedPayment == 1){
                            htmlReturn += '<p><input type="radio" class="typePayment" name="typePayment" value="1" /><span>Thanh toán theo giờ</span></p>';
                            htmlReturn += '<p><input type="radio" class="typePayment" name="typePayment" value="2" /><span>Thanh toán theo lượt</span></p>';
                        }else if(response.paidByHour == 1){
                            htmlReturn += '<p><input type="hidden" class="typePayment" name="typePayment" value="1" /><span>Thanh toán theo giờ</span></p>';
                        }else if(response.turnBasedPayment == 1){
                            htmlReturn += '<p><input type="hidden" class="typePayment" name="typePayment" value="2" /><span>Thanh toán theo lượt</span></p>';
                        }else{
                            htmlReturn += '<p><input type="hidden" class="typePayment" name="typePayment" value="3" /><span>Tư vấn miễn phí</span></p>';
                        }
                        htmlReturn += '<p></p>';
                        htmlReturn += '<p><input type="button" value="Bỏ qua" class="cofirm-money-cancel" /><input type="button" value="Ðồng ý" class="cofirm-money-ok" /></p>';
                        htmlReturn += '<input type="hidden" class="userId" value="'+response.uid+'"/>';//user thuc hien call
                        htmlReturn += '<input type="hidden" class="uidCall" value="'+response.uidCall+'"/>';
                        connect.handleResponse(htmlReturn,0);
                    }else if(response.msg == 3){
                        //comfirm cancel
                        var htmlReturn = '<span>Yêu cầu tư vấn của bạn bị từ chối!</span>';
                        connect.handleResponse(htmlReturn,1);
                    }else if(response.msg == 4){
                        //No payment
                        var htmlReturn = '<span>Yêu cầu thanh toán của bạn bị từ chối!</span>';
                        connect.handleResponse(htmlReturn,1);
                    }else if(response.msg == 6){
                        //End call
                        var htmlReturn = '<span>Tư vấn đã kết thúc!</span>';
                        connect.handleResponse(htmlReturn,1);
                    }
                    connect.noerror = true;
                }else if(response.code == 0){
                    connect.code = 0;
                }
            },
            complete: function(response){
                if(connect.code == 1){
                    if (!connect.noerror)
                        setTimeout(function(){ connect.getData() }, 3000); 
                    else
                        connect.getData();
                }
                connect.noerror = false;
            }
        });
	},
    handleResponse: function(response,type){
        $('div.note-popup').css('display','block');
        $('div.note-popup div.content').html(response);
        if(type == 1)
            setTimeout(function(){ connect.hiddenResponse() }, 10000);
        else if (type == 0)
            setTimeout(function(){ connect.hiddenResponse() }, 30000);
        else if (type == 2){
            return true;
        }
    },
    handleCallResponse: function(response){
        $('div.note-popup div.content').html('');
        $('div.call-center').css('display','block');
        $('div.call-center div.content').html(response);
    },
    hiddenResponse: function(){
        $('div.note-popup div.content').html('');
        $('div.note-popup').hide();
    },
    hiddenCallResponse: function(){
        $('div.call-center div.content').html('');
        $('div.call-center').hide();
    },
    closeCall: function(userId,uidCall,type,transactionId,typePayment){
        $.ajax({
            beforeSend:function(){
            },
            type: 'GET',
            url: '/RealTime/Endcall',
            data: {
                'uid'       	 : userId,
                'uidCall'   	 : uidCall,
                'typeClose'		 : type,
                'transactionId'	 :transactionId
            },
            dataType: 'json',
            success: function(data){
            }
        });
        msg = 6;
        connect.hiddenCallResponse();
        connect.backConfirm(msg,userId,uidCall);
        return true;
    },
    pedingCall: function(userId,uidCall,timeDelay,transactionId,typePayment,skype){
        var htmlReturn = '<span>Hệ thống bắt đầu tính phí!</span>';
        htmlReturn += '<p><input type="button" value="Ngừng" class="close_call" /></p>';
        htmlReturn += '<input type="hidden" class="userId" value="'+userId+'"/>';
        htmlReturn += '<input type="hidden" class="uidCall" value="'+uidCall+'"/>';//user thuc hien call
        htmlReturn += '<input type="hidden" class="transactionId" value="'+transactionId+'"/>';//transaction id payment
        htmlReturn += '<input type="hidden" class="typePayment" value="'+typePayment+'"/>';//payment type
        connect.handleCallResponse(htmlReturn);
        window.location.href = 'skype:'+skype+'?call';
        if(timeDelay != 0 && typePayment != 3){
            connect.alertMsg = 'Số tiền của bạn không đủ để tiếp tục thanh toán!';
            setTimeout(function(){ connect.closeCall(userId,uidCall,1,transactionId,typePayment) }, timeDelay);
        }
    }
};
connect.getData();
